package com.ledi.guns.modular.ledipay.controller.feignClients.req;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

import javax.validation.constraints.NotNull;

import lombok.Data;

import com.ledi.guns.modular.ledipay.controller.feignClients.req.SmsPackageReq.SaveSmsPackage;
import com.ledi.guns.modular.ledipay.controller.feignClients.req.SmsPackageReq.UpdateSmsPackage;

/**
 * <p>
 * 学校短信套餐购买记录
 * </p>
 *
 * @author zhongxp
 * @since 2018-07-09
 */
@Data
public class SmsSchoolRecord implements Serializable {

	private static final long serialVersionUID = 1L;

	@NotNull(groups = UpdateSmsPackage.class, message = "充值id不能为空！")
	private Long id;
	/**
	 * 充值学校
	 */
	private Long schoolId;
	/**
	 * 充值学校
	 */
	private String schoolName;
	/**
	 * 套餐id
	 */
	@NotNull(groups = { SaveSmsPackage.class, UpdateSmsPackage.class }, message = "套餐Id不能为空！")
	private Long packageId;
	/**
	 * 版本号
	 */
	@NotNull(groups = { SaveSmsPackage.class, UpdateSmsPackage.class }, message = "套餐版本号不能为空！")
	private Integer versionNo;
	/**
	 * 订单号
	 */
	private Long orderNo;
	/**
	 * 支付方式(0支付宝，1微信)
	 */
	@NotNull(groups = UpdateSmsPackage.class, message = "缴费方式不能为空")
	private Integer payWay;

	/**
	 * 支付状态（0待支付，1已支付）
	 */
	private Integer status;

	/**
	 * 交易编号
	 */
	private Long dealNo;
	private Date createTime;
	private Long creatorId;
	private Long updaterId;
	private Date updateTime;

	/**
	 * 付款时间
	 */
	private Date payTime;

	/**
	 * 短信条数
	 */
	private Long smsCount;
	/**
	 * 赠送短信条数
	 */
	private Long giveSmsCount;
	/**
	 * 原价
	 */
	private BigDecimal originPrice;
	/**
	 * 现价（付款金额）
	 */
	private BigDecimal presentPrice;
	/**
	 * 套餐名称
	 */
	private String name;

	/**
	 * 收款方
	 */
	private String payee;

	/**
	 * 学校微信商户号ID
	 */
	private String subMchId;

	/**
	 * 学校对公支付宝账号
	 */
	private String alipayNumber;

	private String sign;
}
